package com.ruoyi.db.domain;

import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 用户登陆记录对象 lq_member_login_session
 * 
 * @author ruoyi
 * @date 2025-05-22
 */
public class MemberLoginSession extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 登陆token */
    private String token;

    /** 登陆日期 */
    @Excel(name = "登陆日期")
    private String dateInfo;

    /** 用户uid */
    @Excel(name = "用户uid")
    private Long uid;

    /** 手机号 */
    @Excel(name = "手机号")
    private String mobile;

    /** 应用编号 */
    @Excel(name = "应用编号")
    private String appCode;

    /** 注册渠道编号 */
    @Excel(name = "注册渠道编号")
    private String channelCode;

    /** 注册渠道名称 */
    @Excel(name = "注册渠道名称")
    private String channelName;

    /** 注册日期 */
    @Excel(name = "注册日期")
    private String regDateInfo;

    /** 注册应用编号 */
    @Excel(name = "注册应用编号")
    private String regAppCode;

    /** 登陆渠道编号 */
    @Excel(name = "登陆渠道编号")
    private String reqChannelCode;

    /** 登陆渠道名称 */
    @Excel(name = "登陆渠道名称")
    private String reqChannelName;

    /** 登陆ip */
    @Excel(name = "登陆ip")
    private String reqIp;

    /** 状态 */
    @Excel(name = "状态")
    private String status;

    /** 登陆类型 */
    @Excel(name = "登陆类型")
    private String loginType;

    /** 随机id */
    @Excel(name = "随机id")
    private String randomUuid;

    private String extData;

    private String deviceKey;

    
    
    private Long deviceKeyType;

    /** 登陆时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "登陆时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date loginTime;

    public void setToken(String token) 
    {
        this.token = token;
    }

    public String getToken() 
    {
        return token;
    }
    public void setDateInfo(String dateInfo) 
    {
        this.dateInfo = dateInfo;
    }

    public String getDateInfo() 
    {
        return dateInfo;
    }
    public void setUid(Long uid) 
    {
        this.uid = uid;
    }

    public Long getUid() 
    {
        return uid;
    }
    public void setMobile(String mobile) 
    {
        this.mobile = mobile;
    }

    public String getMobile() 
    {
        return mobile;
    }
    public void setAppCode(String appCode) 
    {
        this.appCode = appCode;
    }

    public String getAppCode() 
    {
        return appCode;
    }
    public void setChannelCode(String channelCode) 
    {
        this.channelCode = channelCode;
    }

    public String getChannelCode() 
    {
        return channelCode;
    }
    public void setChannelName(String channelName) 
    {
        this.channelName = channelName;
    }

    public String getChannelName() 
    {
        return channelName;
    }
    public void setRegDateInfo(String regDateInfo) 
    {
        this.regDateInfo = regDateInfo;
    }

    public String getRegDateInfo() 
    {
        return regDateInfo;
    }
    public void setRegAppCode(String regAppCode) 
    {
        this.regAppCode = regAppCode;
    }

    public String getRegAppCode() 
    {
        return regAppCode;
    }
    public void setReqChannelCode(String reqChannelCode) 
    {
        this.reqChannelCode = reqChannelCode;
    }

    public String getReqChannelCode() 
    {
        return reqChannelCode;
    }
    public void setReqChannelName(String reqChannelName) 
    {
        this.reqChannelName = reqChannelName;
    }

    public String getReqChannelName() 
    {
        return reqChannelName;
    }
    public void setReqIp(String reqIp) 
    {
        this.reqIp = reqIp;
    }

    public String getReqIp() 
    {
        return reqIp;
    }
    public void setStatus(String status) 
    {
        this.status = status;
    }

    public String getStatus() 
    {
        return status;
    }
    public void setLoginType(String loginType) 
    {
        this.loginType = loginType;
    }

    public String getLoginType() 
    {
        return loginType;
    }
    public void setRandomUuid(String randomUuid) 
    {
        this.randomUuid = randomUuid;
    }

    public String getRandomUuid() 
    {
        return randomUuid;
    }
    public void setExtData(String extData) 
    {
        this.extData = extData;
    }

    public String getExtData() 
    {
        return extData;
    }
    public void setDeviceKey(String deviceKey) 
    {
        this.deviceKey = deviceKey;
    }

    public String getDeviceKey() 
    {
        return deviceKey;
    }
    public void setDeviceKeyType(Long deviceKeyType) 
    {
        this.deviceKeyType = deviceKeyType;
    }

    public Long getDeviceKeyType() 
    {
        return deviceKeyType;
    }
    public void setLoginTime(Date loginTime) 
    {
        this.loginTime = loginTime;
    }

    public Date getLoginTime() 
    {
        return loginTime;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("token", getToken())
            .append("dateInfo", getDateInfo())
            .append("uid", getUid())
            .append("mobile", getMobile())
            .append("appCode", getAppCode())
            .append("channelCode", getChannelCode())
            .append("channelName", getChannelName())
            .append("regDateInfo", getRegDateInfo())
            .append("regAppCode", getRegAppCode())
            .append("reqChannelCode", getReqChannelCode())
            .append("reqChannelName", getReqChannelName())
            .append("reqIp", getReqIp())
            .append("status", getStatus())
            .append("loginType", getLoginType())
            .append("randomUuid", getRandomUuid())
            .append("extData", getExtData())
            .append("deviceKey", getDeviceKey())
            .append("deviceKeyType", getDeviceKeyType())
            .append("loginTime", getLoginTime())
            .append("createTime", getCreateTime())
            .append("updateTime", getUpdateTime())
            .toString();
    }
}
